package com.tgu.service;


import com.tgu.entity.request.*;
import com.tgu.utils.result.Result;
import org.springframework.ui.Model;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;

public interface IUsersService {

    /**
     * 登录
     * @param loginReq
     * @return
     */
    Result login(LoginReq loginReq);

    /**
     * 注册
     * @param registerReq
     * @return
     */
    Result register(RegisterReq registerReq);

    /**
     * 充值
     * @param req
     * @return
     */
    Result recharge(RechargeReq req);

    /**
     * 根据id获取信息，为了充值完之后即使更新显示信息
     * @param id
     * @return
     */
    Result getById(String id);

    /**
     * 根据用户id修改用户信息
     * @param infoReq
     * @return
     */
    Result changeInfo(ChangeInfoReq infoReq);

    /**
     * 上传认证图片
     * @param req
     * @param file
     * @param m
     * @return
     */
    String upLoadApprove(HttpServletRequest req, MultipartFile file, Model m);

    /**
     * 提交用户的认证信息
     * @param submitApproveReq
     * @return
     */
    Result submitApprove(SubmitApproveReq submitApproveReq);

    /**
     * 获取用户提交的认证图片
     * @param fileName
     * @return
     */
    byte[] getUploadedApprove(String fileName);
}
